package com.payment.system.mapper;

import com.payment.system.domain.AcqBind;
import com.payment.system.domain.MerchantIncreaseLimit;
import com.payment.system.vo.PlanAcqVo;

import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 信用卡通道绑定中间 数据层
 * 
 * @author payment
 * @date 2019-02-15
 */
public interface AcqBindMapper 
{
	/**
     * 查询信用卡通道绑定中间信息
     * 
     * @param id 信用卡通道绑定中间ID
     * @return 信用卡通道绑定中间信息
     */
	public AcqBind selectAcqBindById(String id);
	
	/**
     * 查询信用卡通道绑定中间信息
     * 
     * @return 信用卡通道绑定中间信息
     */
	public AcqBind selectAcqBindByBankIdAndAcqId(@Param("acqId") String acqId,@Param("bankId") String bankId);
	
	/**
     * 查询信用卡通道绑定中间列表
     * 
     * @param acqBind 信用卡通道绑定中间信息
     * @return 信用卡通道绑定中间集合
     */
	public List<AcqBind> selectAcqBindList(AcqBind acqBind);
	
	/**
     * 新增信用卡通道绑定中间
     * 
     * @param acqBind 信用卡通道绑定中间信息
     * @return 结果
     */
	public int insertAcqBind(AcqBind acqBind);
	
	/**
     * 修改信用卡通道绑定中间
     * 
     * @param acqBind 信用卡通道绑定中间信息
     * @return 结果
     */
	public int updateAcqBind(AcqBind acqBind);

	/**
	 * 验证是否开通过通道
	 * @param cardId 卡ID
	 * @return
	 */
	public List<AcqBind> selectByCardId(String cardId);

	public int deletByCardId(String cardId);

	public List<PlanAcqVo> selectPlanAcqListByCardId(@Param("bankId")String cardId,@Param("type") String type);

	int batchAddBind(List<MerchantIncreaseLimit> list);

	int deletByAcqId(@Param("acqId")String acqId);
	
}